home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-20 / bb21c.zip / FWD.DOC < prev    next >
Text File  |  1992-11-19  |  19KB  |  500 lines

  1.  
  2. To forward to a station, that station must now be designated a BBS or a
  3. personal BBS.  Use the EU command and set the proper flag.
  4.  
  5.      B flag -- Old BBS programs that don't have the [xxx] info
  6.      A flag -- Advanced BBS that does send [xxx].  When in doubt,
  7.                use this flag
  8.      P flag -- Personal BBS.
  9.  
  10. Rather than the current way of having a list of destinations for each
  11. route, a list of routes for each destination is used.  The data has been
  12. broken into two pieces.  How to connect with a distant mailbox is in the
  13. PATH file while the information on what to send is in the ROUTE file.
  14.  
  15. * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = *
  16.  
  17. The ROUTE File
  18. --------------
  19.  
  20. A line from the ROUTE file is organized as:
  21.  
  22.     W3IWI W0RLI WB6ASR 80 KE6BX
  23.  
  24. This says to send mail for W3IWI mailbox down the path named either
  25. W0RLI, WB6ASR, and then KE6BX.  The forwarding will be performed in that
  26. order.  W0RLI will be tried first and then WB6ASR.  If a message is more
  27. than 80 hours old, KE6BX will be used (See special case:  numbers below)
  28.  
  29. Wildcards are supported.   For full details on these, see WILDCARD.DOC.
  30. Just more than * is supported.
  31.  
  32. Once a message (or a member of a distribution list has been selected, it
  33. cannot be selected for another route.
  34.  
  35.         95020   AA4RE
  36.         95*     W0RLI
  37.  
  38. A message with a route code of 95020 will go to AA4RE.  All others go to
  39. W0RLI. 95020 will not since it was selected for the AA4RE route already.
  40.  
  41. The ROUTE files also allows ALIASES.  These are of the form
  42.  
  43.        SOCAL = K6IYK W6PW
  44.  
  45. Anywhere SOCAL appears in a route, K6IYK W6PW will be substituted.  So
  46. if the ROUTE file says
  47.  
  48.        WB6YMH SOCAL
  49.  
  50. this is the same as
  51.  
  52.        WB6YMH K6IYK W6PW
  53.  
  54. Aliases only affect the path to use.  Aliases must be listed before they
  55. can be used.
  56.  
  57. >>> Hierarchial addresses
  58.  
  59. The full hierarchical address is checked.  The "#" and "." are not
  60. ignored.  Search is right to left.
  61.  
  62. Examples:
  63.  
  64.    Address #NOCAL.CA.USA.NA
  65.  
  66.    Matches
  67.           NA
  68.           USA\.NA
  69.           CA\.USA\.NA
  70.           "#NOCAL\.CA\.USA\.NA
  71.  
  72. Note the use of the double quote.  This is because the "#" is also a
  73. wild card character for numbers!  The double quote says to interpret the
  74. next character literally.
  75.  
  76. The backslash "\" is used for optional material.  Thus the pattern
  77. USA\.NA matches both USA and USA.NA.
  78.  
  79. >>> Special case:  LEAVE
  80.  
  81.    If you send something to LEAVE then it will stay on the BBS and not
  82.    be forwarded.  This is handy to prevent just certain messages to stay.
  83.    Example:
  84.  
  85.        95020 LEAVE
  86.        95*   KE6BX
  87.  
  88.        A message to 95020 will stay but all other 95anything will go to
  89.        KE6BX.
  90.  
  91. >>> Special case:  @BLANK
  92.  
  93.    If the special @BLANK is used, this will match any message where
  94.    the @BBS field is blank.  Combining LEAVE and BLANK make some
  95.    route tables easy:
  96.  
  97.        AA4RE  LEAVE
  98.        @BLANK LEAVE
  99.        *      WB6ZVW
  100.  
  101.        Any message addressed to @AA4RE stays.  Any message addressed to
  102.        anycall without @ will stay.  All others will go to WB6ZVW.  This
  103.        is very handy for a small BBS where everything but local calls go
  104.        to one other BBS.
  105.  
  106. >>> Special case:  ?
  107.  
  108.    If you send something to ? then it will stay on the BBS and not
  109.    be forwarded.  It will show up if you execute the L? command.
  110.    Example:
  111.  
  112.        USA   ?
  113.  
  114.        A message to USA will be marked with the ? flag
  115.  
  116. >>> Special case:  numbers
  117.  
  118.    The numbers in a route file pertain to time delay
  119.  
  120.      Example: W3IWI W0RLI 20 WB6ASR +5 WB6ZVW 80 KE6BX
  121.  
  122.    This means send traffic to W0RLI to W3IWI anytime.  If a message if more
  123.    than 20 hours old then also try to forward it to WB6ASR.  If a message
  124.    is 25 hours old (20 from before WB6ASR +5) to WB6ZVW and after 80 hours
  125.    to KE6BX.  The use of the "+5" should be confined to ALIAS statements
  126.    since it requires more computation.  I would use something like:
  127.  
  128.        OTHER = WB6ASR +5 WB6ZVW +10 KE6BX
  129.        W3IWI KA6FUB 10 OTHER
  130.  
  131.    This would be interpreted as
  132.  
  133.        W3IWI 10 WB6ASR 15 WB6ZVW 20 KE6BX
  134.  
  135. >>> Special case:  DONE
  136.  
  137.    If you send something to DONE then it will sbe marked as already
  138.    forwarded.  This is handy marking message done for dead systems or
  139.    for giving up on forwarding bulletins after a certain length of time.
  140.  
  141.    Example:
  142.  
  143.        ALLUS AA4RE 6 DONE
  144.  
  145.        A message to USA will be forwarded to AA4RE.  After trying for
  146.        6 hours, the message will be marked as forwarded.
  147.  
  148. * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = *
  149.  
  150. The PATH File
  151. -------------
  152.  
  153. The PATH file has the entries that describe how to connect to a
  154. mailbox we want to forward to.   A typical entry:
  155.  
  156.  
  157. PATH W0RLI  B W0RLI
  158. T 0000 0600
  159. T 1000 1600 1 5
  160. T 2200 2359
  161. O TA
  162. C W6AMT-10
  163. PF 12
  164. SC #SFO3
  165. R* to *
  166. SC SNTCRZ
  167. R* to *
  168. SC W0RLI
  169. R* to *
  170.  
  171.     PATH pathname port callsign force
  172.  
  173.            "pathname" is the name of this path.  Any arbitrary 12 characters
  174.            will do.  This matches the entry in the ROUTE file.
  175.  
  176.            "port" is the letter of the port to use to connect to this
  177.            mailbox on.  If this is a DRSI card using TNC-TSR, you must also
  178.            code the port on the C(onnect) statement.  If this is a BPQ
  179.            switch port of any type, you may have to code the port number
  180.            also.
  181.  
  182.            Note that you can designate subports by extending this field.
  183.            Example:  B-1 would indicate a subport.  You can then control
  184.            forwarding by subport by using commands like "X PORT B-1".  If
  185.            you want to automatically forward by subport then code
  186.            "no_out_fwd = Y" for this port in your PARMS.BB and then issue
  187.            the X commands via WAKEUP.BB
  188.  
  189.            For forwarding to a file, use a port of "L"
  190.  
  191.            "callsign" is used to set certain parameters found in the USER
  192.            file (like MAXPAC etc).  Any call can be used here as long as the
  193.            USER file contains the information.  This call is also used for
  194.            REVERSE FORWARDING.
  195.  
  196.            "FORCE" -- If the actual word FORCE appears after the callsign,
  197.            connect via this path even if no messages.
  198.  
  199.     C(onnect) callsign
  200.  
  201.            This is the actual connect command to be used.  For the DRSI
  202.            card using TNC-TSR, don't forget to include port.  Example:
  203.                  C 1:AA4RE
  204.  
  205.            Note 1:  You must have a "C" statement in each PATH even if
  206.            it will never be used.
  207.  
  208.            Note 2:  If you are forwarding to a file (the port letter is
  209.            "L", then the "C" statement will contain the name of the
  210.            file.
  211.  
  212.     P(ort) cmd
  213.  
  214.            This is a command to be issued to this port.  Can be used to
  215.            change all sorts of things.  Be careful to affect only this
  216.            "channel".  See the documentation for your TNC as to what is
  217.            allowed.
  218.  
  219.     S(end) text
  220.  
  221.            Send the text of this line to the distant station.
  222.  
  223.     R(ecieve) pattern
  224.  
  225.            If the next line received from the distant station does not match
  226.            this line disconnect.  Full pattern matching can be used.  "R* to
  227.            *" is great for the NETROM response.  Be careful when
  228.            constructing your own pattern.  It starts immediately after the
  229.            "R" without an intervening blank.
  230.  
  231.     W(ait for) pattern
  232.  
  233.            If the next line received from the distant station does not match
  234.            this line then ignoreit.  Full pattern matching can be used.  "R*
  235.            to *" is great for the NETROM response.  Be careful when
  236.            constructing your own pattern.  It starts immediately after the
  237.            "R" without an intervening blank.  Warning!!  The only exit from
  238.            this other than a successful match is the port timeout value.
  239.  
  240.     O(Order) order_info
  241.  
  242.            This controls how messages are ordered before forwarding.
  243.            order_info can have up to three characters:
  244.  
  245.               A -- Order by age with oldest first
  246.               T -- Order by type.  T before P before B.  This is
  247.                    actually an alphabetical sort.  Special case
  248.                    of "P" with distribution list is same as "B"
  249.               S -- Order by size.  Smallest first
  250.               D -- Order by day.  Similar to A but only the day matters
  251.                    and not the time.  Oldest first.
  252.               R -- Reverse of D.  Latest is first.
  253.  
  254.            If you code the letters TA then the messages will be sent
  255.            by type then age within type.  Thus the first message sent
  256.            will be the oldest "T" message.  The order will look
  257.            like this:
  258.  
  259.                 oldest "T" message
  260.                 .
  261.                 newest "T" message
  262.                 oldest "P" message
  263.                 .
  264.                 newest "P" message
  265.                 oldest "B" message
  266.                 .
  267.                 newest "B" message
  268.  
  269.            Note that using "A" as a parameter except as the last letter
  270.            is kinda useless.  If you gave "AT" then messages would be
  271.            ordered by AGE then type.  The probability of two messages
  272.            being the same AGE (down to the second) is very very small.
  273.            This is why the "D" is given.  "DT" would order by DAY and
  274.            then TYPE within DAY.
  275.  
  276.            Note 1:  The "O" statement must be before any "C" statements
  277.            Note 2:  There is a DEFAULT_FORWARD_ORDER parameter that
  278.                     applies on a port basis in PARMS.BB
  279.            Note 3:  Any "O" statement will wipe out the ORDER parm on
  280.                     the "T" statement
  281.  
  282.     T(ime) start_time end_time start_day_of_week end_day_of_week ...options...
  283.  
  284.            Use this path during certain times.
  285.               start_time = start time we can use path.  HHMM format
  286.               stop_time  = stop time we can use path.  If not given then
  287.                            we can forward anytime after start time.
  288.               start_day_of_week = Day of week we can use this path.
  289.                            Sunday = 0, Monday = 1, etc.  If omitted, can
  290.                            use any day.  If no end_day_of_week given then
  291.                            path can be used this day ONLY.
  292.               end_day_of_week = Last day path can be used.
  293.               options = options for more control.
  294.                            HOUR x/y    If the hour divided by x has a
  295.                                        remainder of y then forward.
  296.                                        Examples:
  297.                                           HOUR 2/0   Only even hours
  298.                                           HOUR 2/1   Only odd hours
  299.                                           HOUR 3/1   Every 3 hrs (0100 is ok)
  300.                            ORDER ccc   Same as "O" but only for this time
  301.                                        period.  Must be last thing on line.
  302.                            SIZE nnn    Max size to forward in this time period
  303.                            TYPE aaa    Type of message to forward.  Use
  304.                                        an underscore '_' for blank types.
  305.                                        Wildcards not allowed.  Max ten types.
  306.                            REVERSE     Apply this statement only when reverse
  307.                                        forwarding
  308.                            NOREVERSE   Apply this statement only when not
  309.                                        reverse forwarding
  310.                            FORCE       Apply this statement only when force
  311.                                        forwarding
  312.                            NOFORCE     Apply this statement only when not
  313.                                        force forwarding
  314.                            RPROMPT     Send the reverse forward prompt F>
  315.                            NORPROMPT   Do not send the reverse forward prompt F>
  316.  
  317.            Note 1:  All start/end are INCLUSIVE.
  318.            Note 2:  You can have many "T" statements.  If ANY of them
  319.                     is true, you can forward.
  320.            Note 3:  The "T" statement must be right after the PATH statement
  321.            Note 4:  The end day-of-week must be greater than or equal to
  322.                     the start day-of-week.  The format 6 0 will not execute
  323.                     on Saturday and Sunday but will simply be ignored.  To
  324.                     accomplish something like this you will need two "T"
  325.                     statements:  One for Saturday and one for Sunday
  326.            Note 5:  The ORDER, SIZE, TYPE, etc operands from the FIRST
  327.                     "T" statement that is found to be true will be used.
  328.            Note 6:  If REVERSE and NOREVERSE are both specified then the
  329.                     "T" statement will always be ignored
  330.            Note 7:  If FORCE and NOFORCE are both specified then the "T"
  331.                     statement will always be ignored
  332.            Note 8:  The parameters FORCE/NOFORCE/REVERSE/NOREVERSE/HOUR
  333.                     should appear BEFORE the SIZE/TYPE/ORDER parameters.
  334.  
  335.            Examples
  336.  
  337.               T 0900 2300                 Use this path from 0900 to 2300
  338.               T 0000 2359 1 5             Use this path from Mon to Fri
  339.               T 0000 2359 0 6 HOUR 2/0    Any day but only even hours
  340.               T 0000 0800 6 6 HOUR 2/1    Odd hours between midnight and
  341.                                           eight AM on Saturday only
  342.               T 1200 2359 0 6 ORDER DT    Forward between noon and midnight
  343.                                           on any day with order sequence DT
  344.               T 1200 2200 0 6 SIZE 100    Forward between noon and 10 PM
  345.                                           on any day but only messages of 100
  346.                                           bytes or less
  347.               T 1200 2359 0 6 ORDER DT SIZE 100
  348.                                           Forward between noon and midnight
  349.                                           on any day with order sequence DT
  350.                                           but only messages of 100 bytes or
  351.                                           less
  352.               T 0000 2359 0 6 TYPE PT     Forward anytime and anyday but only
  353.                                           message types "P" and "T'
  354.  
  355.               T 0000 0000 0 6 NOREVERSE   Never forward down this path except
  356.                                           for reverse forward
  357.  
  358. * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = *
  359.  
  360. Some notes on proper coding of the "T" command.  Prior to V2.12, the "T"
  361. command only applied to direct forward out.  It was ignored on reverse
  362. and force forwards.  On newer releases, this is not true.  The "T"
  363. command now applies to all forwards.  This allows you to fine tune the
  364. messages to be forwarded under all conditions.
  365.  
  366. Several examples follow:
  367.  
  368.    1) You only want to reverse or force forward to the station:
  369.  
  370.           T 0000 2359 0 6 REVERSE       <- This handles reverse
  371.           T 0000 2359 0 6 FORCE         <- This handles force
  372.  
  373.       Since there is no "T" line for normal forwarding, it is skipped.
  374.  
  375.    2) You only want to forward private mail during the day but want to
  376.       force forward anything.
  377.  
  378.           T 0800 1900 0 6 TYPE PT NOFORCE     <- P or T mail during the day
  379.           T 0000 2359 0 6                     <- Everything else
  380.  
  381.       This coding exploits the fact that the first "T" command that is
  382.       true is used.  The other "T" commands are ignored
  383.  
  384.  
  385.  
  386.  
  387. * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = *
  388.  
  389. To ensure proper operation, execute the GF command after updating
  390. ROUTE.BB Warning!!!  If forwarding is in progress when you issue the GF
  391. command then you will start to receive "routes in use" messages.  This
  392. means that the data from the old ROUTE.BB file is still being used by
  393. someone connected to the BBS.  The condition should clear up when those
  394. stations disconnect.
  395.  
  396. * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = *
  397.  
  398. You can forward to a file by setting the port letter to "L" and the name
  399. of the file on the "C" statement.  Example:
  400.  
  401. PATH PACSAT L PACSAT
  402. C D:\PACSATS\FILE.OUT
  403.  
  404. Note that the call given as the 4th word on the path line MUST be in the
  405. user file as a BBS.
  406.  
  407. * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = *
  408.  
  409. Forwarding thru NETROM, TheNet, G8BPQ switch
  410. --------------------------------------------
  411.  
  412. Use the following snippets for NETROM forwarding
  413.  
  414. C NODE1                    <---Local Node
  415. SC NODE2                   <---Distant Node
  416. R* to *                    <--- to MUST be in lower case!
  417. SC Z6ZZZ                   <---The other BBS
  418. R* to *
  419.  
  420. Repeat the 2nd and 3rd lines as necessary for all the nodes needed
  421.  
  422. * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = *
  423.  
  424. Forwarding thru ROSE
  425. --------------------
  426.  
  427. SC KD5SL V W5JJW-2,504926  <--- ROSE Connect Command
  428. R* to *                    <---}
  429. R* being *                 <---} Three Lines for ROSE Response
  430. R* Complete *              <---}
  431.  
  432. * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = *
  433.  
  434. NETROM/ROSE/NETROM
  435. ------------------
  436.  
  437. CO MSVKS
  438. R* to *
  439. SC N5HOF-2 V AE5V-3,318323
  440. R* to *
  441. R* being *
  442. R* Complete *
  443. SC N5HOF
  444. R* to *
  445.  
  446. * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = *
  447.  
  448. Using the G8BPQ switch
  449. ----------------------
  450.  
  451. If you are using the G8BPQ switch, you will always connect to
  452. the switch first.
  453.  
  454. C SW
  455. SC X6XXX
  456. R* to *
  457.  
  458. * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = * = *
  459.  
  460. Simple Example
  461. --------------
  462.  
  463. A simple BBS might have the following
  464.  
  465.   ACTION.BB:
  466.  
  467.     DISTRIBUTE DISTLIST B
  468.  
  469.   DISTLIST.DIS
  470.  
  471.     GILROY WB6ZVW KE6BX
  472.     MERCED K6RAU  N6OA
  473.  
  474.   ROUTE.BB
  475.  
  476.     GILROY WB6ZVW
  477.     MERCED K6RAU
  478.  
  479.   PATH.BB
  480.     PATH WB6ZVW A WB6ZVW
  481.     C WB6ZVW
  482.  
  483.     PATH K6RAU A K6RAU
  484.     C K6RAU
  485.  
  486. Now the explanation.
  487.  
  488. 1) The ACTION.BB says to distribute all bulletins via DISTLIST.DIS
  489.  
  490. 2) DISTLIST.DIS says to send the bulletins to two destinations, MERCED
  491. and GILROY (I like to use town names).  On the Gilroy line, the calls
  492. WB6ZVW and KE6BX mean that if a bulletin has already gone thru either of
  493. these stations, do not send it to "GILROY"
  494.  
  495. 3) The ROUTE.BB says to send things for GILROY to WB6ZVW and for
  496. MERCED to K6RAU.
  497.  
  498. The use of town names for bulletins allows them to be routed in
  499. ROUTE.BB differently than private mail.
  500.